package com.lfk.justweengine.Engine;

import ohos.aafwk.ability.Ability;
import ohos.agp.components.surfaceprovider.SurfaceProvider;
import ohos.agp.utils.RectFloat;
import ohos.bundle.AbilityInfo;


/**
 * Engine nucleus
 *
 * @author liufengkai
 *         Created by liufengkai on 15/11/26.
 */
public abstract class Engine extends Ability {

    public enum ScreenMode {
        LANDSCAPE(AbilityInfo.DisplayOrientation.LANDSCAPE),
        PORTRAIT(AbilityInfo.DisplayOrientation.PORTRAIT);
        public AbilityInfo.DisplayOrientation value;

        ScreenMode(AbilityInfo.DisplayOrientation mode) {
            this.value = mode;
        }
    }

    protected boolean isOpenDebug;

    public abstract SurfaceProvider getSurfaceProvider();

    public abstract void debugDraw(RectFloat bound);
}
